package cn.iocoder.yudao.module.tms.enums;

import cn.iocoder.yudao.framework.common.exception.ErrorCode;

/**
 * TMS 错误码枚举类
 *
 * TMS 系统，使用 1-004-000-000 段
 */
public interface ErrorCodeConstants {

    // ========== 公司联系人信息 1_020_015_000 ==========
    ErrorCode CONTACT_INFO_NOT_EXISTS = new ErrorCode(1_020_015_000, "公司联系人信息不存在");

    // ========== 公司band信息 1_020_016_000 ==========
    ErrorCode BAND_INFO_NOT_EXISTS = new ErrorCode(1_020_016_000, "公司band信息不存在");


    // ========== 公司订单信息 1_020_017_000 ==========
    ErrorCode ORDER_INFO_NOT_EXISTS = new ErrorCode(1_020_017_000, "公司订单信息不存在");


    // ========== 公司订单跟进记录 1_020_018_000 ==========
    ErrorCode ORDER_FOLLOW_LOG_NOT_EXISTS = new ErrorCode(1_020_018_000, "公司订单跟进记录不存在");

    // ========== Band与订单关联 1_020_019_000 ==========
    ErrorCode BAND_ORDER_NOT_EXISTS = new ErrorCode(1_020_019_000, "Band与订单关联不存在");

    // 一一对应唯一性约束：同一Band或同一订单不可重复绑定
    ErrorCode BAND_ORDER_DUPLICATE = new ErrorCode(1_020_019_001, "Band与订单需要一一对应，禁止重复绑定");

    // ========== 培训资料模块 1-004-000-000 ==========
    ErrorCode TRAINING_MATERIAL_NOT_EXISTS = new ErrorCode(1_004_000_000, "培训资料不存在");

    // ========== 公司账期信息 1_020_020_000 ==========
    ErrorCode COMPANY_ACCOUNT_PERIOD_NOT_EXISTS = new ErrorCode(1_020_020_000, "公司账期信息不存在");
    ErrorCode COMPANY_ACCOUNT_PERIOD_EXISTS = new ErrorCode(1_020_020_001, "该公司已存在账期配置");

    // ========== 客户跟进 1_020_021_000 ==========
    ErrorCode CUSTOMER_FOLLOW_UP_NOT_EXISTS = new ErrorCode(1_020_021_000, "客户跟进记录不存在");

    // ========== 客户跟进日志 1_020_022_000 ==========
    ErrorCode CUSTOMER_FOLLOW_LOG_NOT_EXISTS = new ErrorCode(1_020_022_000, "客户跟进日志不存在");

    // ========== 客户背调 1_020_023_000 ==========
    ErrorCode CUSTOMER_BACKGROUND_CHECK_NOT_EXISTS = new ErrorCode(1_020_023_000, "客户背调记录不存在");

    // ========== 工作报告 1_020_024_000 ==========
    ErrorCode WORK_REPORT_NOT_EXISTS = new ErrorCode(1_020_024_000, "工作报告不存在");
    ErrorCode WORK_REPORT_ALREADY_SUBMITTED = new ErrorCode(1_020_024_001, "工作报告已提交，无法修改");

}